import { copy } from '@/utils'
import {getknowledge} from '@/api/knowledge'
export default {
    // 模块名称
    namespace: 'knowledge',
    // 定义数据
    state: {
        setknowledge: [],
        // 总数量
        total:0
    },
    // 修改state中的值
    reducers: {
        CHANGE_LIST(state, { payload: { data, total }}) {
            // state 代表 state中的数据
            // payload 代表 dispatch中的数据
            const newState = copy(state)
            newState.setknowledge = data
            newState.total = total
            return newState
        },
    },
    // // 处理异步任务
    effects: {
        *INIT({ pageInfo }, { put }) {
            // yield 等待后面的任务
            const { data } = yield getknowledge(pageInfo)
            // 执行reducers中的函数用来修改数据
            // put 相当于页面中的dispatch
            yield put({
                type: 'CHANGE_LIST', payload: {
                    data: data[0],
                    total: data[1]
                }
            })
        }
    },
};